Java进阶-- 优先考虑泛型方法

适用范围

类可以从泛型中受益,静态工具API更适合泛型

Collections 的算法方法都已泛型化(如binarySearch、sort)

优势示例

  • 例1:精简API

代码所示是一个简单的设置字体的Util的static API的泛型化代码;

如果不是使用这种泛型化的API,则需要为TextView的扩展类(Button、CheckBox等等)编写数不清的函数

  • 例2:确保类型安全的情况下提升API的易用性

可以看到上面的API可以轻易的操作所有以View为基类的类的集合;

  • 例3:类级别的泛型化

在配合集合使用时需要注意类型cast的警告,这些警告实际上是编译时不会有问题,但真正在运行时可能会抛出ClassCastException,我们在实际项目中应该将这些潜在的威胁清除掉;

对于十分确定不会出问题的类型操作API上,可以用@SuppressWarning(“unckecked”)消除这类警告

get

赶紧用起来吧,你的小伙伴会爱上你写的极简API的

源码里的代码有很多写的极好的点,同学们平时可以扒一扒

Powered by KyleCe

Copyright © 2015 - 2019 KyleCe All Rights Reserved.

访客数 : | 访问量 :